This application claims priority based on provisional patent application No. 60/517,488, entitled “Apparatus and Method for Remotely Sharing Information and Providing Remote Interactive Assistance Via a Communications Network,” filed Nov. 5, 2003. Such application is fully incorporated by reference herein.
The present invention relates to a system and method for providing communications between users over a computer network and, more particularly, to a system and method for providing collaborative browsing (sometimes referred to as “co-browsing”) of information and interactive communications on the world-wide web (WWW), such that, for example, an operator and customer may jointly browse World Wide Web content while communicating by telephone.
The sales volume of Internet businesses continues to increase, and now approaches $60 billion annually. Internet-based transactions offer many advantages for both buyer and seller. From the seller's perspective, the cost of a fixed storefront facility may be eliminated, along with the associated maintenance and manpower costs, while maintaining a store that is effectively open at all times. Using just-in-time inventory control techniques, sellers can significantly reduce the overhead associated with the sale of their products through the use of an Internet web site. Internet sales may also offer advantages in the avoidance of state excise taxes and restrictive state laws pertaining to in-state sales. Advantages to buyers include the ability to consummate transactions from any location where a computer and Internet connection is available, at any time of the day or night. The customer also benefits from the seller's reduced costs, since in order to compete with other Internet retailers the seller will likely be required to pass some of its cost reductions on to the consumer in the form of reduced prices.
One of the most significant drawbacks with Internet sales today is the limited manner in which customer interaction and support may be accomplished. A customer who has a question about a product not addressed in the materials posted to the seller's web site has few attractive alternatives. The customer may send an email to the web site operator, which then generally requires a significant wait of hours or even days in order for a reply to be received. Since the customer's web browser will in all likelihood no longer be pointed at the URL for the page where the customer's question was formulated, more time is wasted as the consumer again locates this particular web page in order to proceed with the order. Follow-up questions, which are often necessary, then require another significant wait. Confusion may result if a different customer service representative fields a follow-up question. Often the answer to the customer's question may be available somewhere on the seller's web site, had the customer only known where to look for the information. Other times there is information that can only be conveyed by an in-person customer service representative. This is particularly true with respect to customers who are not accustomed to navigation on the Internet or World Wide Web.
A common attempt to solve the problem of customer support for Internet-based sales is to supply the customer with a customer service telephone contact number. The customer who has a question about the seller's web site, or requires further information about a product, can then telephone a customer service operator and engage in a direct dialog. The customer service representative can then verbally explain the product, or answer the customer's question, in an immediate fashion similar to that of a sales person at a traditional storefront seller. The problem with this approach, however, is that the customer service representative has no means by which to directly present visual information to the customer. For example, a sales person at a storefront location faced with a question about the location of a product may simply walk the customer to the appropriate aisle and shelf where the product is displayed. If the customer has particular questions about a product's features, the salesperson can physically demonstrate the features and characteristics of the product to the customer at that time. By contrast, a customer service representative speaking by telephone to an Internet customer may direct the customer to a particular web page on the seller's Internet site, but doing so requires that the customer follow precisely the instructions of the customer service representative. These instructions may be tedious as they involve either careful directions about which links to follow or require the customer to type in a URL dictated over the phone. Verbal directions about which link to follow can often be ambiguous. A customer who mistakenly follows the wrong link may take some time to discover that a mistake was made, leading to frustration as the customer service representative's instructions do not match with what the customer is seeing on his or her computer screen. The customer service representative has no immediate means to detect this problem. The customer service representative communicating by telephone may find satisfying the customer's needs especially difficult when the customer's question pertains to use of the seller's Internet web site itself. Customers who do not regularly navigate Internet web pages may find following verbal instructions from a customer service representative just as difficult as navigation of the web site itself. Such persons may become so frustrated or intimidated by the experience that they decide to forego the transaction altogether.
This problem of guiding a customer through a web site by telephone instructions from a customer service representative is particularly challenging when the information required of the customer in order to complete a transaction is itself complex. For example, one service now provided over the Internet is employee insurance enrollment. A company may sign up to a program allowing its employees to enroll in various insurance programs offered through the company via an Internet connection. Those services are provided over the Internet in order to reduce the transaction costs associated with enrollment, and thereby help control the cost of insurance for the employees. Most employees participating in such a program will be able to enter all of the necessary information and respond to questions simply by reviewing the instructions available at the applicable web site, without requiring in-person assistance. Some employees, however, will require live assistance with the enrollment process, and call center operators are generally maintained on staff for this purpose. Given the relative complexity and quantity of information required for insurance enrollment purposes, and the various options and alternatives presented to the employee during the typical enrollment process, call center assistance may be particularly tedious. When there are various options and sub-options from which an employee may choose, it is difficult to guide the employee through the various selections when the operator is not physically viewing the same screen as the employee, and must provide directions by voice only. Errors made by the employee in entering information or navigating the site may not be immediately recognized, leading to greater confusion and frustration on the part of the employee as they are discovered later and the employee is required to backtrack or re-enter information. What is needed is a means by which the call center operator can see exactly what the employee sees on the screen; in essence, allowing the call center operator to virtually “look over the shoulder” of the employee as the information is entered. Even more desirable would be a means by which the operator could remotely enter information and navigate the web site on behalf of the employee, while allowing the employee to simultaneously view and verify all entries and choices as they are made by the operator.
A number of existing Internet services allow direct, instantaneous communication between remote users. For example, two or more users may access a designated web server providing a “text chat” service or a “voice over Internet Protocol” (VoIP) service to communicate with each other in near real time using text messages or relayed voice messages, respectively.
The existing art also includes a number of attempts to develop collaborative web browsing or “co-browsing” technology, which allows two or more users at locations remote from one another to jointly view information available on the World Wide Web. Such technology offers the promise of allowing something of the “over the shoulder” functionality desired for many applications, such as insurance enrollment customer support. Typically these co-browsing systems involve a direct, continuous link between the computers used for the co-browsing session, or at least a direct link between those computers and a third computer functioning as a server. Such systems further require specialized software to be installed at each computer in order to make the co-browsing features accessible.
An example of one such co-browsing system is disclosed in U.S. Pat. No. 6,295,551 to Robert et al. This patent describes a call center system that allows a representative and a user to jointly browse World Wide Web content while simultaneously conducting a voice conversation. A co-browsing server forms a bi-directional connection with both the operator's computer and the user's computer, thereby allowing communication between the two with the server as the communications conduit. The server also downloads software in the form of a small executable application or “applet” to the user's computer, which enables the necessary co-browsing features. This type of software is sometimes referred to as a “surrogate” in certain commercial co-browsing products. Either the user or operator can manipulate their shared view, such as by clicking on a hypertext link; this change is communicated to the server, which then communicates the change to the other computer so that the shared view is updated.
U.S. Patent Application Publication No. US 2002/0029245 to Nahon et al. teaches a co-browsing system that utilizes a proxy server between the customer and agent clients and the Internet. The customer using this system initiates a co-browsing session by selecting a link on a web page, which then redirects the customer from the regular web server connection to a connection with the proxy server. The proxy server may add a footer to a requested web page prior to distribution, and this footer may contain information to redirect the client from the real URL for the web page to the URL of the web page maintained by the proxy server. The process for using this system begins with the customer accessing the web site, then clicking on a button for assistance. The button redirects information to the proxy server, which then in turn requests information from the web server, and appends a unique identifier before storing the web page back at the proxy server. Co-browsing is facilitated by a data collaboration server, and specialized co-browsing software for intercommunication is required at each participating computer.
U.S. Patent Application Publication No. 2002/0035603 to Lee et al. teaches a co-browsing system that utilizes cached web pages and a URL transformation process. The transformed URL allows the browser of each participant to be re-directed to a collaborative version of the applicable web page administered by a collaborative browsing server. The web page with transformed URL is sent to others participating in the same co-browsing session. This functionality requires the download of an applet in order to enable co-browsing; the applet performs the URL transformation process and also contains functionality for distributing various messages generated by the users during the co-browsing session.
Based on technology similar to that taught in the references cited above, a typical procedure for utilizing a co-browsing session to help a customer navigate a web site might proceed as follows. The first step would be for the customer to indicate that live assistance is required, typically by clicking on an appropriate button appearing on a web page found at the web site of interest. A new web page would be displayed, which would include a telephone number by which the customer could contact a customer service representative at the vendor's call center. Next the customer would in fact place a call to the customer service representative, and indicate the need for live assistance. The customer service representative would then launch the co-browsing software maintained on the customer service representative's computer. This software would automatically assign a unique number to this co-browsing session for purposes of identification. The customer service representative would then verbally direct the customer to enter this session number at the web page to which the customer was redirected upon clicking the button seeking live assistance; the web page would have a text entry section designated for this purpose. The customer would then click on a button on that page designated “start interactive assistance” or the like in order to proceed. An applet containing the co-browsing software functionality would be automatically downloaded from a vendor server to the customer. This applet, ideally installed as a “plug-in” application with the customer's web browser software, would then establish communication with the customer service representative's web browser or proxy using the shared session number. Once the link is thus established, any change to one browser window will be echoed in the other user's browser window due to a communication message sent between the customer service representative's computer and customer's computer. The customer service representative and customer thus may jointly share a browsing experience. Typically the co-browsing software and applet would include additional features tailored to the co-browsing experience, such as individual cursors for each user that allow them to point to separate items on a particular page while engaging in voice communications by telephone.
This type of co-browsing method suffers from several important disadvantages and limitations. One of the most important limitations is that an open connection must be maintained between the operator's computer and customer's computer during the co-browsing section. Maintenance of such a connection may be difficult or even impossible due to the security features present on many modern firewalls and proxy servers associated with the user's computer or computer network. Intended to protect users and computer networks from external attack by viruses, worms, or hackers, these systems will often block attempts to initiate the sort of open connection required for this type of co-browsing because of the security risk such open connections entail. In order to overcome these problems, the applet downloaded to a user may need to be customized for each particular type of firewall hardware and software configuration. Given the myriad possibilities for firewall configurations, the required applet must be enormously complex or must be customized by a skilled programmer for each user who will participate in a co-browsing session. In extreme cases, it may even be necessary to set up special servers at the user's location in order to navigate through extremely tight security protocols maintained by firewalls at the user's location. Such custom configuration work is not practical in an environment where the user is any potential customer located anywhere in the world. The alternative would be to disable the user's firewall or other protection schemes, which would leave the user open to outside attack while the co-browsing session proceeds. Given the enormous potential for lost data and productivity resulting from a successful network attack, few companies would risk disabling or weakening their firewalls in order to allow a co-browsing session to proceed.
A related limitation of such systems, also stemming from the requirement for a constantly open connection, is the inherent unreliability of Internet connections made across non-dedicated telephone and cable wires. Where a constant open connection is required, a single interruption may cause the loss of data, errors in data transmission, or the failure of the synchronization aspects of the co-browsing experience. In such situations, the operator may be required to initiate a completely new session, issue a new session number to the user, and the user will then be required to start the co-browsing session again from scratch. This may mean that the user must re-enter significant amounts of data or renegotiate numerous choices on the applicable web pages. Such interruptions are costly to the vendor and frustrating to the customer who is required to start over in the process that may well have been significantly completed. Although leased land line connections are available that provide a direct, dedicated connection to reduce the likelihood of these problems, few companies could afford to maintain such a connection for the purpose of enabling a co-browsing session; thus requiring the use of a dedicated connection line would make co-browsing impractical for the vast majority of applications to which it may be applied.
Another disadvantage of these co-browsing techniques is that the steps necessary to initiate a co-browsing session are relatively complex, and require numerous active steps on the part of the customer in order for the co-browsing session to begin. The very customers who require assistance are often those persons with the least experience navigating the World Wide Web, and concomitantly those persons who are least likely to be able to successfully complete a complex initiation procedure. Those persons who are initially confused by basic elements of on-line transactions, such as standard browser commands and navigation by hyperlinks, will likely be unable to complete their portion of the co-browsing initiation procedure in order to receive the assistance they need.
Yet another disadvantage of these co-browsing techniques is that the applets or other form of software that must be downloaded or otherwise installed at the user's computer to provide the necessary co-browsing functionality may not be compatible with all web sites. Many web pages already include their own java applets, for example, which may or may not be compatible with the code associated with the co-browsing features. Thus this type of co-browsing technology is not usable with all web sites. Further, these applets or surrogates may be quite large, in some cases exceeding 600 kilobytes, which means that they may take a significant period of time to download onto a computer that is accessing the Internet over a standard dial-up modem connection. This delay may discourage persons from using the co-browsing feature, or may cause them to forego a transaction altogether. Additionally, large organizations routinely set security permissions for personal computers within their networks to prevent users from downloading files that could potentially be dangerous to the user's computer or the organization's network; such security permissions may well block any attempt to download the sort of applet or surrogate required for these co-browsing packages.
One possible solution to the problems associated with maintaining a continuously open connection is the use of polling. Instead of keeping an open connection, the subject web page as it appears on the user's screen would include code to periodically poll the web server responsible for generating each instance of that page to determine if any updates are necessary. Polling could thus in theory eliminate the need for a constantly open connection. Polling is not a practical solution using the pre-existing technologies, however, because it would severely restrict the number of persons who could simultaneously view a given web page; in other words, the solution would not be scalable. As numerous persons accessed the web page, each instance of the web page at each user's computer would be bombarding the web server looking for updates. This would create an immense load upon the web server and degrade system performance. In extreme cases, the result would be similar in effect to a “denial of service” type hacker attack, making access to the web server impossible and rendering the web site inaccessible.
Thus it would be desirable to find a scalable co-browsing system and method that is easily initiated by a customer, does not require an open connection between the participants in the co-browsing session, and does not require the download of specialized software to the customers using such a system. Such a system and method are achieved, and the limitations of the references described above are overcome, by the present invention as described below.